package com.fcscs.ecms.service;

import java.util.List;

import org.springframework.stereotype.Service;

import com.fcscs.cservice.domain.MainMenuItem;
import com.fcscs.cservice.domain.model.MainMenuItemView;
import com.fcscs.cservice.service.VersionableManager;
import com.fcscs.cservice.ws.schema.common.MenuListView;
import com.fcscs.cservice.ws.schema.common.PictureFrameView;

@Service
public interface ECMSMainMenuManager extends VersionableManager {

	MainMenuItem getMainMenuItem(long id);
	
	List<MainMenuItem> getMainMenuItemList(long orgId, long propId, boolean isCurrent); //isCurrent true: current; false: scheduled

	List<MainMenuItem> getMainMenuItemList(long orgId, long propId, long versionId); //get specified version data

	List<MainMenuItem> saveMainMenuItemList(List<MainMenuItem> mmiList); //used to save display order

	MainMenuItem createMainMenuItem(MainMenuItem mmi);

	MainMenuItem saveMainMenuItem(MainMenuItem mmi);
	
	boolean deleteMainMenuItem(MainMenuItem mmi);

	boolean permDeleteMainMenuItem(MainMenuItem mmi);
	
	boolean isMainMenuItemTaken(long orgId, long propId, String menuType, Long id, long versionId);

	List<MainMenuItemView> getMainMenuItemViewList(long orgId, long propId); //used by web service, get current version
	PictureFrameView getPictureFrameViews(long orgid , long propId , long id);
	List<MenuListView> getMenuListViews(long orgId , long propId, String langId);
	List<MenuListView> getMasterMenuListViews(long orgId , long propId ,String langId );

	PictureFrameView getPictureFrameViews(long orgId, long propId,int type);
}
